package com.yjq.programmer.service;

import com.yjq.programmer.dto.PageDTO;
import com.yjq.programmer.dto.ResponseDTO;
import com.yjq.programmer.dto.SingerDTO;

import java.util.List;

/**
 * @author 杨杨吖
 * @QQ 823208782
 * @WX yjqi12345678
 * @create 2022-11-14 11:22
 */
public interface ISingerService {

    // 分页获取歌手数据
    ResponseDTO<PageDTO<SingerDTO>> getSingerListByPage(PageDTO<SingerDTO> pageDTO);

    // 保存歌手数据(添加、修改)
    ResponseDTO<Boolean> saveSinger(SingerDTO singerDTO);

    // 删除歌手数据
    ResponseDTO<Boolean> removeSinger(SingerDTO singerDTO);

    // 获取全部歌手数据
    ResponseDTO<List<SingerDTO>> getAllSinger();

    // 搜索歌手数据
    ResponseDTO<List<SingerDTO>> searchSinger(SingerDTO singerDTO);

    // 根据id获取歌手数据
    ResponseDTO<SingerDTO> getSingerById(SingerDTO singerDTO);

    // 获取全部歌手数据
    ResponseDTO<List<SingerDTO>> getAllSingerList();

    // 增加歌手浏览量
    ResponseDTO<Boolean> addSingerView(SingerDTO singerDTO);

    // 获取热门歌手数据
    ResponseDTO<List<SingerDTO>> getHotSingerList(PageDTO<SingerDTO> pageDTO);

    // 获取歌手总数
    ResponseDTO<Integer> getSingerTotal();

}
